package com.integration.pojo;

import java.math.BigInteger;
import java.util.Date;

import org.json.JSONException;
import org.json.JSONObject;

public class TwittUserInfo {
	private BigInteger id;
	private String profile_background_image_url;
	private String follow_request_sent;
	private BigInteger favourites_count;
	private String profile_link_color;
	private String url;
	private Boolean verified;
	private BigInteger friends_count;
	private Date created_at;
	private String following;
	private Boolean profile_use_background_image;
	private BigInteger utc_offset;
	private String profile_text_color;
	private String profile_image_url;
	private String name;
	private String id_str;
	private String time_zone;
	private String screen_name;
	private BigInteger followers_count;
	private Boolean default_profile;
	private Boolean contributors_enabled;
	private String location;
	private Boolean _protected;
	private Boolean geo_enabled;
	private String profile_sidebar_border_color;
	private Boolean show_all_inline_media;
	private BigInteger listed_count;
	private String description;
	private Boolean profile_background_tile;
	private String profile_sidebar_fill_color;
	private Boolean is_translator;
	private String profile_background_image_url_https;
	private String lang;
	private String profile_background_color;
	private String notifications;
	private BigInteger statuses_count;
	private Boolean default_profile_image;
	private String profile_image_url_https;
	
	public TwittUserInfo(JSONObject in) throws JSONException {
		super();
		this.id = BigInteger.valueOf(in.optLong("id"));
		this.url = in.optString("url");
		this.friends_count = BigInteger.valueOf(in.optLong("friends_count"));
		this.following = in.optString("following");
		this.profile_image_url = in.optString("profile_image_url");
		this.name = in.optString("name");
		this.id_str = in.optString("id_str");
		this.time_zone = in.optString("time_zone");
		this.screen_name = in.optString("screen_name");
		this.followers_count = BigInteger.valueOf(in.optLong("followers_count"));
		this.location = in.optString("location");
	}


	public BigInteger getId() {
		return id;
	}
	public void setId(BigInteger id) {
		this.id = id;
	}
	public String getProfile_background_image_url() {
		return profile_background_image_url;
	}
	public void setProfile_background_image_url(String profile_background_image_url) {
		this.profile_background_image_url = profile_background_image_url;
	}
	public String getFollow_request_sent() {
		return follow_request_sent;
	}
	public void setFollow_request_sent(String follow_request_sent) {
		this.follow_request_sent = follow_request_sent;
	}
	public BigInteger getFavourites_count() {
		return favourites_count;
	}
	public void setFavourites_count(BigInteger favourites_count) {
		this.favourites_count = favourites_count;
	}
	public String getProfile_link_color() {
		return profile_link_color;
	}
	public void setProfile_link_color(String profile_link_color) {
		this.profile_link_color = profile_link_color;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}
	public Boolean getVerified() {
		return verified;
	}
	public void setVerified(Boolean verified) {
		this.verified = verified;
	}
	public BigInteger getFriends_count() {
		return friends_count;
	}
	public void setFriends_count(BigInteger friends_count) {
		this.friends_count = friends_count;
	}
	public Date getCreated_at() {
		return created_at;
	}
	public void setCreated_at(Date created_at) {
		this.created_at = created_at;
	}
	public String getFollowing() {
		return following;
	}
	public void setFollowing(String following) {
		this.following = following;
	}
	public Boolean getProfile_use_background_image() {
		return profile_use_background_image;
	}
	public void setProfile_use_background_image(Boolean profile_use_background_image) {
		this.profile_use_background_image = profile_use_background_image;
	}
	public BigInteger getUtc_offset() {
		return utc_offset;
	}
	public void setUtc_offset(BigInteger utc_offset) {
		this.utc_offset = utc_offset;
	}
	public String getProfile_text_color() {
		return profile_text_color;
	}
	public void setProfile_text_color(String profile_text_color) {
		this.profile_text_color = profile_text_color;
	}
	public String getProfile_image_url() {
		return profile_image_url;
	}
	public void setProfile_image_url(String profile_image_url) {
		this.profile_image_url = profile_image_url;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getId_str() {
		return id_str;
	}
	public void setId_str(String id_str) {
		this.id_str = id_str;
	}
	public String getTime_zone() {
		return time_zone;
	}
	public void setTime_zone(String time_zone) {
		this.time_zone = time_zone;
	}
	public String getScreen_name() {
		return screen_name;
	}
	public void setScreen_name(String screen_name) {
		this.screen_name = screen_name;
	}
	public BigInteger getFollowers_count() {
		return followers_count;
	}
	public void setFollowers_count(BigInteger followers_count) {
		this.followers_count = followers_count;
	}
	public Boolean getDefault_profile() {
		return default_profile;
	}
	public void setDefault_profile(Boolean default_profile) {
		this.default_profile = default_profile;
	}
	public Boolean getContributors_enabled() {
		return contributors_enabled;
	}
	public void setContributors_enabled(Boolean contributors_enabled) {
		this.contributors_enabled = contributors_enabled;
	}
	public String getLocation() {
		return location;
	}
	public void setLocation(String location) {
		this.location = location;
	}
	public Boolean getProtected() {
		return _protected;
	}
	public void setProtected(Boolean _protected) {
		this._protected = _protected;
	}
	public Boolean getGeo_enabled() {
		return geo_enabled;
	}
	public void setGeo_enabled(Boolean geo_enabled) {
		this.geo_enabled = geo_enabled;
	}
	public String getProfile_sidebar_border_color() {
		return profile_sidebar_border_color;
	}
	public void setProfile_sidebar_border_color(String profile_sidebar_border_color) {
		this.profile_sidebar_border_color = profile_sidebar_border_color;
	}
	public Boolean getShow_all_inline_media() {
		return show_all_inline_media;
	}
	public void setShow_all_inline_media(Boolean show_all_inline_media) {
		this.show_all_inline_media = show_all_inline_media;
	}
	public BigInteger getListed_count() {
		return listed_count;
	}
	public void setListed_count(BigInteger listed_count) {
		this.listed_count = listed_count;
	}
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	public Boolean getProfile_background_tile() {
		return profile_background_tile;
	}
	public void setProfile_background_tile(Boolean profile_background_tile) {
		this.profile_background_tile = profile_background_tile;
	}
	public String getProfile_sidebar_fill_color() {
		return profile_sidebar_fill_color;
	}
	public void setProfile_sidebar_fill_color(String profile_sidebar_fill_color) {
		this.profile_sidebar_fill_color = profile_sidebar_fill_color;
	}
	public Boolean getIs_translator() {
		return is_translator;
	}
	public void setIs_translator(Boolean is_translator) {
		this.is_translator = is_translator;
	}
	public String getProfile_background_image_url_https() {
		return profile_background_image_url_https;
	}
	public void setProfile_background_image_url_https(
			String profile_background_image_url_https) {
		this.profile_background_image_url_https = profile_background_image_url_https;
	}
	public String getLang() {
		return lang;
	}
	public void setLang(String lang) {
		this.lang = lang;
	}
	public String getProfile_background_color() {
		return profile_background_color;
	}
	public void setProfile_background_color(String profile_background_color) {
		this.profile_background_color = profile_background_color;
	}
	public String getNotifications() {
		return notifications;
	}
	public void setNotifications(String notifications) {
		this.notifications = notifications;
	}
	public BigInteger getStatuses_count() {
		return statuses_count;
	}
	public void setStatuses_count(BigInteger statuses_count) {
		this.statuses_count = statuses_count;
	}
	public Boolean getDefault_profile_image() {
		return default_profile_image;
	}
	public void setDefault_profile_image(Boolean default_profile_image) {
		this.default_profile_image = default_profile_image;
	}
	public String getProfile_image_url_https() {
		return profile_image_url_https;
	}
	public void setProfile_image_url_https(String profile_image_url_https) {
		this.profile_image_url_https = profile_image_url_https;
	}
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((_protected == null) ? 0 : _protected.hashCode());
		result = prime
				* result
				+ ((contributors_enabled == null) ? 0 : contributors_enabled
						.hashCode());
		result = prime * result
				+ ((created_at == null) ? 0 : created_at.hashCode());
		result = prime * result
				+ ((default_profile == null) ? 0 : default_profile.hashCode());
		result = prime
				* result
				+ ((default_profile_image == null) ? 0 : default_profile_image
						.hashCode());
		result = prime * result
				+ ((description == null) ? 0 : description.hashCode());
		result = prime
				* result
				+ ((favourites_count == null) ? 0 : favourites_count.hashCode());
		result = prime
				* result
				+ ((follow_request_sent == null) ? 0 : follow_request_sent
						.hashCode());
		result = prime * result
				+ ((followers_count == null) ? 0 : followers_count.hashCode());
		result = prime * result
				+ ((following == null) ? 0 : following.hashCode());
		result = prime * result
				+ ((friends_count == null) ? 0 : friends_count.hashCode());
		result = prime * result
				+ ((geo_enabled == null) ? 0 : geo_enabled.hashCode());
		result = prime * result + ((id == null) ? 0 : id.hashCode());
		result = prime * result + ((id_str == null) ? 0 : id_str.hashCode());
		result = prime * result
				+ ((is_translator == null) ? 0 : is_translator.hashCode());
		result = prime * result + ((lang == null) ? 0 : lang.hashCode());
		result = prime * result
				+ ((listed_count == null) ? 0 : listed_count.hashCode());
		result = prime * result
				+ ((location == null) ? 0 : location.hashCode());
		result = prime * result + ((name == null) ? 0 : name.hashCode());
		result = prime * result
				+ ((notifications == null) ? 0 : notifications.hashCode());
		result = prime
				* result
				+ ((profile_background_color == null) ? 0
						: profile_background_color.hashCode());
		result = prime
				* result
				+ ((profile_background_image_url == null) ? 0
						: profile_background_image_url.hashCode());
		result = prime
				* result
				+ ((profile_background_image_url_https == null) ? 0
						: profile_background_image_url_https.hashCode());
		result = prime
				* result
				+ ((profile_background_tile == null) ? 0
						: profile_background_tile.hashCode());
		result = prime
				* result
				+ ((profile_image_url == null) ? 0 : profile_image_url
						.hashCode());
		result = prime
				* result
				+ ((profile_image_url_https == null) ? 0
						: profile_image_url_https.hashCode());
		result = prime
				* result
				+ ((profile_link_color == null) ? 0 : profile_link_color
						.hashCode());
		result = prime
				* result
				+ ((profile_sidebar_border_color == null) ? 0
						: profile_sidebar_border_color.hashCode());
		result = prime
				* result
				+ ((profile_sidebar_fill_color == null) ? 0
						: profile_sidebar_fill_color.hashCode());
		result = prime
				* result
				+ ((profile_text_color == null) ? 0 : profile_text_color
						.hashCode());
		result = prime
				* result
				+ ((profile_use_background_image == null) ? 0
						: profile_use_background_image.hashCode());
		result = prime * result
				+ ((screen_name == null) ? 0 : screen_name.hashCode());
		result = prime
				* result
				+ ((show_all_inline_media == null) ? 0 : show_all_inline_media
						.hashCode());
		result = prime * result
				+ ((statuses_count == null) ? 0 : statuses_count.hashCode());
		result = prime * result
				+ ((time_zone == null) ? 0 : time_zone.hashCode());
		result = prime * result + ((url == null) ? 0 : url.hashCode());
		result = prime * result
				+ ((utc_offset == null) ? 0 : utc_offset.hashCode());
		result = prime * result
				+ ((verified == null) ? 0 : verified.hashCode());
		return result;
	}
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		TwittUserInfo other = (TwittUserInfo) obj;
		if (_protected == null) {
			if (other._protected != null)
				return false;
		} else if (!_protected.equals(other._protected))
			return false;
		if (contributors_enabled == null) {
			if (other.contributors_enabled != null)
				return false;
		} else if (!contributors_enabled.equals(other.contributors_enabled))
			return false;
		if (created_at == null) {
			if (other.created_at != null)
				return false;
		} else if (!created_at.equals(other.created_at))
			return false;
		if (default_profile == null) {
			if (other.default_profile != null)
				return false;
		} else if (!default_profile.equals(other.default_profile))
			return false;
		if (default_profile_image == null) {
			if (other.default_profile_image != null)
				return false;
		} else if (!default_profile_image.equals(other.default_profile_image))
			return false;
		if (description == null) {
			if (other.description != null)
				return false;
		} else if (!description.equals(other.description))
			return false;
		if (favourites_count == null) {
			if (other.favourites_count != null)
				return false;
		} else if (!favourites_count.equals(other.favourites_count))
			return false;
		if (follow_request_sent == null) {
			if (other.follow_request_sent != null)
				return false;
		} else if (!follow_request_sent.equals(other.follow_request_sent))
			return false;
		if (followers_count == null) {
			if (other.followers_count != null)
				return false;
		} else if (!followers_count.equals(other.followers_count))
			return false;
		if (following == null) {
			if (other.following != null)
				return false;
		} else if (!following.equals(other.following))
			return false;
		if (friends_count == null) {
			if (other.friends_count != null)
				return false;
		} else if (!friends_count.equals(other.friends_count))
			return false;
		if (geo_enabled == null) {
			if (other.geo_enabled != null)
				return false;
		} else if (!geo_enabled.equals(other.geo_enabled))
			return false;
		if (id == null) {
			if (other.id != null)
				return false;
		} else if (!id.equals(other.id))
			return false;
		if (id_str == null) {
			if (other.id_str != null)
				return false;
		} else if (!id_str.equals(other.id_str))
			return false;
		if (is_translator == null) {
			if (other.is_translator != null)
				return false;
		} else if (!is_translator.equals(other.is_translator))
			return false;
		if (lang == null) {
			if (other.lang != null)
				return false;
		} else if (!lang.equals(other.lang))
			return false;
		if (listed_count == null) {
			if (other.listed_count != null)
				return false;
		} else if (!listed_count.equals(other.listed_count))
			return false;
		if (location == null) {
			if (other.location != null)
				return false;
		} else if (!location.equals(other.location))
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		if (notifications == null) {
			if (other.notifications != null)
				return false;
		} else if (!notifications.equals(other.notifications))
			return false;
		if (profile_background_color == null) {
			if (other.profile_background_color != null)
				return false;
		} else if (!profile_background_color
				.equals(other.profile_background_color))
			return false;
		if (profile_background_image_url == null) {
			if (other.profile_background_image_url != null)
				return false;
		} else if (!profile_background_image_url
				.equals(other.profile_background_image_url))
			return false;
		if (profile_background_image_url_https == null) {
			if (other.profile_background_image_url_https != null)
				return false;
		} else if (!profile_background_image_url_https
				.equals(other.profile_background_image_url_https))
			return false;
		if (profile_background_tile == null) {
			if (other.profile_background_tile != null)
				return false;
		} else if (!profile_background_tile
				.equals(other.profile_background_tile))
			return false;
		if (profile_image_url == null) {
			if (other.profile_image_url != null)
				return false;
		} else if (!profile_image_url.equals(other.profile_image_url))
			return false;
		if (profile_image_url_https == null) {
			if (other.profile_image_url_https != null)
				return false;
		} else if (!profile_image_url_https
				.equals(other.profile_image_url_https))
			return false;
		if (profile_link_color == null) {
			if (other.profile_link_color != null)
				return false;
		} else if (!profile_link_color.equals(other.profile_link_color))
			return false;
		if (profile_sidebar_border_color == null) {
			if (other.profile_sidebar_border_color != null)
				return false;
		} else if (!profile_sidebar_border_color
				.equals(other.profile_sidebar_border_color))
			return false;
		if (profile_sidebar_fill_color == null) {
			if (other.profile_sidebar_fill_color != null)
				return false;
		} else if (!profile_sidebar_fill_color
				.equals(other.profile_sidebar_fill_color))
			return false;
		if (profile_text_color == null) {
			if (other.profile_text_color != null)
				return false;
		} else if (!profile_text_color.equals(other.profile_text_color))
			return false;
		if (profile_use_background_image == null) {
			if (other.profile_use_background_image != null)
				return false;
		} else if (!profile_use_background_image
				.equals(other.profile_use_background_image))
			return false;
		if (screen_name == null) {
			if (other.screen_name != null)
				return false;
		} else if (!screen_name.equals(other.screen_name))
			return false;
		if (show_all_inline_media == null) {
			if (other.show_all_inline_media != null)
				return false;
		} else if (!show_all_inline_media.equals(other.show_all_inline_media))
			return false;
		if (statuses_count == null) {
			if (other.statuses_count != null)
				return false;
		} else if (!statuses_count.equals(other.statuses_count))
			return false;
		if (time_zone == null) {
			if (other.time_zone != null)
				return false;
		} else if (!time_zone.equals(other.time_zone))
			return false;
		if (url == null) {
			if (other.url != null)
				return false;
		} else if (!url.equals(other.url))
			return false;
		if (utc_offset == null) {
			if (other.utc_offset != null)
				return false;
		} else if (!utc_offset.equals(other.utc_offset))
			return false;
		if (verified == null) {
			if (other.verified != null)
				return false;
		} else if (!verified.equals(other.verified))
			return false;
		return true;
	}
	@Override
	public String toString() {
		return "TwittUserInfo [id=" + id + ", profile_background_image_url="
				+ profile_background_image_url + ", follow_request_sent="
				+ follow_request_sent + ", favourites_count="
				+ favourites_count + ", profile_link_color="
				+ profile_link_color + ", url=" + url + ", verified="
				+ verified + ", friends_count=" + friends_count
				+ ", created_at=" + created_at + ", following=" + following
				+ ", profile_use_background_image="
				+ profile_use_background_image + ", utc_offset=" + utc_offset
				+ ", profile_text_color=" + profile_text_color
				+ ", profile_image_url=" + profile_image_url + ", name=" + name
				+ ", id_str=" + id_str + ", time_zone=" + time_zone
				+ ", screen_name=" + screen_name + ", followers_count="
				+ followers_count + ", default_profile=" + default_profile
				+ ", contributors_enabled=" + contributors_enabled
				+ ", location=" + location + ", _protected=" + _protected
				+ ", geo_enabled=" + geo_enabled
				+ ", profile_sidebar_border_color="
				+ profile_sidebar_border_color + ", show_all_inline_media="
				+ show_all_inline_media + ", listed_count=" + listed_count
				+ ", description=" + description + ", profile_background_tile="
				+ profile_background_tile + ", profile_sidebar_fill_color="
				+ profile_sidebar_fill_color + ", is_translator="
				+ is_translator + ", profile_background_image_url_https="
				+ profile_background_image_url_https + ", lang=" + lang
				+ ", profile_background_color=" + profile_background_color
				+ ", notifications=" + notifications + ", statuses_count="
				+ statuses_count + ", default_profile_image="
				+ default_profile_image + ", profile_image_url_https="
				+ profile_image_url_https + "]";
	}
	
}
